Maintain map/unmap invariants in GtkRecentChooserDialog
authorKjell Ahlstedt <kjell.ahlstedt@bredband.net>
Wed, 16 Nov 2011 08:03:12 +0000 (09:03 +0100)
committerKjell Ahlstedt <kjell.ahlstedt@bredband.net>
Wed, 16 Nov 2011 18:56:11 +0000 (19:56 +0100)
We used to explicitly map and unmap the child GtkRecentChooserWidget when
mapping and unmapping the dialog, respectively. Now that GtkContainer actually
unmaps child widgets (instead of avoiding that), we can assume that the
child GtkRecentChooserWidget will be unmapped when we want it to be.

This fixes a warning from gtk_widget_verify_invariants(), as we were mapping
our child widget before calling our parent class' ::map() handler. Bug #659257.

gtk/gtkrecentchooserdialog.c

index 7a1a925bb82ce3570cd5573854ed251010dc51ca..5ee55e277bfdab502d5075d0f9dbb9a747155375 100644 (file)
@@ -100,9 +100,6 @@ static void gtk_recent_chooser_dialog_get_property (GObject      *object,
                                                    GValue       *value,
                                                    GParamSpec   *pspec);
 
-static void gtk_recent_chooser_dialog_map       (GtkWidget *widget);
-static void gtk_recent_chooser_dialog_unmap     (GtkWidget *widget);
-
 G_DEFINE_TYPE_WITH_CODE (GtkRecentChooserDialog,
                         gtk_recent_chooser_dialog,
                         GTK_TYPE_DIALOG,
@@ -113,16 +110,12 @@ static void
 gtk_recent_chooser_dialog_class_init (GtkRecentChooserDialogClass *klass)
 {
   GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
-  GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
   
   gobject_class->set_property = gtk_recent_chooser_dialog_set_property;
   gobject_class->get_property = gtk_recent_chooser_dialog_get_property;
   gobject_class->constructor = gtk_recent_chooser_dialog_constructor;
   gobject_class->finalize = gtk_recent_chooser_dialog_finalize;
   
-  widget_class->map = gtk_recent_chooser_dialog_map;
-  widget_class->unmap = gtk_recent_chooser_dialog_unmap;
-  
   _gtk_recent_chooser_install_properties (gobject_class);
   
   g_type_class_add_private (klass, sizeof (GtkRecentChooserDialogPrivate));
@@ -280,29 +273,6 @@ gtk_recent_chooser_dialog_finalize (GObject *object)
   G_OBJECT_CLASS (gtk_recent_chooser_dialog_parent_class)->finalize (object);
 }
 
-static void
-gtk_recent_chooser_dialog_map (GtkWidget *widget)
-{
-  GtkRecentChooserDialog *dialog = GTK_RECENT_CHOOSER_DIALOG (widget);
-  GtkRecentChooserDialogPrivate *priv = dialog->priv;
-  
-  if (!gtk_widget_get_mapped (priv->chooser))
-    gtk_widget_map (priv->chooser);
-
-  GTK_WIDGET_CLASS (gtk_recent_chooser_dialog_parent_class)->map (widget);
-}
-
-static void
-gtk_recent_chooser_dialog_unmap (GtkWidget *widget)
-{
-  GtkRecentChooserDialog *dialog = GTK_RECENT_CHOOSER_DIALOG (widget);
-  GtkRecentChooserDialogPrivate *priv = dialog->priv;
-  
-  GTK_WIDGET_CLASS (gtk_recent_chooser_dialog_parent_class)->unmap (widget);
-  
-  gtk_widget_unmap (priv->chooser);
-}
-
 static GtkWidget *
 gtk_recent_chooser_dialog_new_valist (const gchar      *title,
                                      GtkWindow        *parent,